1. Field of the Invention
The present invention relates to fault tolerant unified messaging systems configured for providing unified messaging services in an open protocol network.
2. Description of the Related Art
The evolution of the public switched telephone network has resulted in a variety of voice applications and services that can be provided to individual subscribers and business subscribers. Such services include voice messaging systems that enable landline or wireless subscribers to record, playback, and forward voice mail messages. However, the ability to provide enhanced services to subscribers of the public switched telephone network is directly affected by the limitations of the public switched telephone network. In particular, the public switched telephone network operates according to a protocol that is specifically designed for the transport of voice signals; hence any modifications necessary to provide enhanced services can only be done by switch vendors that have sufficient know-how of the existing public switched telephone network infrastructure.
Unified communications systems are under development as a way of enhancing messaging services for users such as wireless telephone subscribers. A disadvantage of unified communications systems implemented as enhanced versions of the voice mail system, paging system, or e-mail interface resident within the wireless telephone communications system is that such implementation requires detailed knowledge of the proprietary protocols associated with the voice mail systems. Hence, such implementations are available only from switch vendors having knowledge of the proprietary protocols.
Use of a unified communications system implemented independent of the existing proprietary voice mail systems, such as the commercially-available Cisco Unified Open Network Exchange (Cisco uOne) (Products UONE-FOUND 4.1S, and UONE-VOICEMSG4.1S) from Cisco Systems, Inc., enables service providers to use scalable and distributed systems using recognized communication protocols. Hence, the service providers may use such unified communications systems across multiple platforms, independent of protocol, for storage of unified messages (carrying e.g., voice messages, facsimile, and/or e-mail) stored in a centralized messaging store or distributed message stores. In particular, such unified communications systems may transfer unified messages to message stores according to a prescribed open network protocol, for example IMAP protocol via the Internet.
Commonly-assigned, copending application Ser. No. 09/480,485, filed Jan. 11, 2000, entitled Application Server Configured for Dynamically Generating Web Pages for Voice Enabled Web Applications, the disclosure of which is incorporated in its entirety herein by reference, discloses an application server that executes a voice-enabled web application by runtime execution of extensible markup language (XML) documents that define the voice-enabled web application to be executed. The application server includes a runtime environment that establishes an efficient, high-speed connection to a web server. The application server, in response to receiving a user request from a user, accesses a selected XML page that defines at least a part of the voice application to be executed for the user. The XML page may describe any one of a user interface such as dynamic generation of a menu of options or a prompt for a password, an application logic operation, or a function capability such as generating a function call to an external resource. The application server then parses the XML page, and executes the operation described by the XML page, for example dynamically generating an HTML page having voice application control content, or fetching another XML page to continue application processing. In addition, the application server may access an XML page that stores application state information, enabling the application server to be state-aware relative to the user interaction. Hence, the XML page, which can be written using a conventional editor or word processor, defines the application to be executed by the application server within the runtime environment, enabling voice enabled web applications to be generated and executed without the necessity of programming language environments.
Hence, web programmers can write voice-enabled web applications, using the teachings of the above-incorporated application Ser. No. 09/480,485, by writing XML pages that specify respective voice application operations to be performed. The XML documents have a distinct feature of having tags that allow a web browser (or other software) to identify information as being a specific kind or type of information. Hence, the XML documents define the application to be executed by the application server within the runtime environment, enabling voice enabled web applications to be generated and executed without the necessity of programming language environments.
Hence, open network-based systems such as the commercially-available Cisco uOne system (4.1S) or the system disclosed in application Ser. No. 09/480,485 enable the use of open-network systems such as IMAP message stores, or LDAP directories accessible via an IP-based network such as the Internet, enabling worldwide deployment based on IP-based access protocols. In particular, the IMAP message stores are used for storage of received messages for messaging subscribers, for example voice mail messages. IMAP message stores also are used for storage of a subscriber's spoken name (used for example when the subscriber is sending a message) and subscriber greetings to be played for a calling party attempting to reach the subscriber. The LDAP directories are optimized for providing fast response times to high volume access or search operations for read-only type operations, and typically do not implement transaction or rollback schemes as typically found in complex database systems; hence LDAP directories typically are used for storage of subscriber attribute information, including subscriber name, account information, preferences including hierarchal lists of telephone numbers for single-number reach applications, etc.
An important consideration in the deployment of open network-based systems for complex operations, such as unified messaging, is the ability to provide fault tolerant messaging services in the event that there is a server failure. In particular, proprietary based voice messaging systems may suffer a complete loss of messaging services for incoming callers if the associated messaging server, configured for storing record messages, becomes inoperable; in such cases, incoming callers cannot leave any message for a messaging subscriber, creating substantial inconvenience for the messaging subscriber.
In addition, the reliance of an IMAP messaging server for storage of personalized greetings creates problems in the event that the IMAP messaging server is unable to provide a personalized greeting during an incoming call. In particular, a messaging server may be rendered inoperable if unable to access the personalized greetings, preventing incoming callers from leaving a message for a messaging subscriber. Although a messaging server can be configured to play the called party number using text to speech resources, a calling party may be hesitant to leave a sensitive message in a voice mailbox without verifying the identity of the owner of the voice mailbox.